package pessoa;

import java.io.Serializable;


public class Cliente implements Serializable, Comparable<Cliente>{
	private static final long	serialVersionUID	= 2286334024045860574L;

	private static int nextId = 0;

	private int id;
	private String nome;
	private String telefone;
	private String endereco;
	private double renda;

	public Cliente(String nome, String telefone, String endereco, double renda) {
		this.id = nextId++;
		this.nome = nome;
		this.telefone = telefone;
		this.endereco = endereco;
		this.renda = renda;
	}

	public int getId(){
		return this.id;
	}
	
	public String getNome() {
		return nome;
	}

	public void setName(String nome) {
		this.nome = nome;
	}

	public String getTelefone() {
		return telefone;
	}

	public void setTelefone(String telefone) {
		this.telefone = telefone;
	}

	public String getEndereco() {
		return endereco;
	}

	public void setEndereco(String endereco) {
		this.endereco = endereco;
	}

	public double getRenda() {
		return renda;
	}

	public void setRenda(double renda) {
		this.renda = renda;
	}

	@Override
	public boolean equals(Object obj) {
		if (obj != null && obj instanceof Cliente)
			return this.getNome().equals(((Cliente)obj).getNome());
		else
			return false;
	}
	
	@Override
	public int compareTo(Cliente outroCliente) {
		if (outroCliente == null || outroCliente.getNome() == null){
			return this.getNome().compareTo("");
		}
		else if (this.getNome() == null){
			return "".compareTo(outroCliente.getNome());
		}
		else {
			return this.getNome().compareTo(outroCliente.getNome());
		}
	}
	
}

